package com.org.javabody.classapi;

import java.lang.reflect.Constructor;

/**
 * Created by admin on 2017/4/30.
 */
public class PrintMain {
    public static void main(String[] args) {
       Class<?> cl = ClassDemo.class;

       System.out.println(ClassDemo.class);

        try {
            System.out.println(Class.forName("com.org.javabody.classapi.ClassDemo"));//Class.forName(类import)跟类.class效果是一样的，一般用前面一个
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
        System.out.println(ClassDemo.class.isArray());
        System.out.println("-------class的构造方法------");
        Constructor[] con = ClassDemo.class.getConstructors();//通过这个能知道class类的构造函数有多少个，有参的类型是什么
        for (int i=0; i <con.length;i++) {
            System.out.println(con[i]);
        }
        System.out.println("-------class的构造方法------");
        System.out.println("-------实例化class------");
        try {
            System.out.println(ClassDemo.class.newInstance());
        }catch (Exception e){
            System.out.println("找不到ClassDemo对应的编译文件");
        }
        System.out.println("-------实例化class------");
        try {
            ClassDemo.class.newInstance().print();
        }catch (Exception e){
            System.out.println("找不到ClassDemo对应的编译文件");
        }


    }
}
